package com.intelligent.service;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * CEO看板数据统计服务接口
 * 提供CEO看板所需的各种数据统计功能
 */
public interface CeoDashboardService {
    
    /**
     * 获取核心业务统计数据
     * @return 包含销售收入、订单数量、客户数量等核心指标的统计数据
     */
    Map<String, Object> getCoreStatistics();
    
    /**
     * 获取销售趋势数据
     * @param months 查询月份数，默认12个月
     * @return 销售趋势数据
     */
    Map<String, Object> getSalesTrend(int months);
    
    /**
     * 获取采购趋势数据
     * @param months 查询月份数，默认12个月
     * @return 采购趋势数据
     */
    Map<String, Object> getProcurementTrend(int months);
    
    /**
     * 获取生产合格率趋势
     * @param months 查询月份数，默认12个月
     * @return 生产合格率趋势数据
     */
    Map<String, Object> getProductionQualityTrend(int months);
    
    /**
     * 获取订单销售额分布
     * @return 不同类别订单的销售额分布数据
     */
    List<Map<String, Object>> getOrderDistribution();
    
    /**
     * 获取最新订单列表
     * @param limit 返回记录数量
     * @return 最新订单列表
     */
    List<Map<String, Object>> getLatestOrders(int limit);
    
    /**
     * 获取最新订单列表（支持分页）
     * @param page 页码（从1开始）
     * @param limit 每页记录数量
     * @return 包含订单列表和分页信息的数据
     */
    Map<String, Object> getLatestOrdersWithPagination(int page, int limit);
    
    /**
     * 获取库存预警信息
     * @return 库存预警数据
     */
    Map<String, Object> getInventoryAlerts();
    public List<Map<String, Object>> getLatestOrdersSimple(int limit);
}